﻿using Wicresoft.SMS.Data;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Data.Objects.DataClasses;

namespace SMS.Gateway.Host.Test
{
    
    
    /// <summary>
    ///This is a test class for UserTest and is intended
    ///to contain all UserTest Unit Tests
    ///</summary>
    [TestClass()]
    public class UserTest
    {


        private TestContext testContextInstance;

        /// <summary>
        ///Gets or sets the test context which provides
        ///information about and functionality for the current test run.
        ///</summary>
        public TestContext TestContext
        {
            get
            {
                return testContextInstance;
            }
            set
            {
                testContextInstance = value;
            }
        }

        #region Additional test attributes
        // 
        //You can use the following additional attributes as you write your tests:
        //
        //Use ClassInitialize to run code before running the first test in the class
        //[ClassInitialize()]
        //public static void MyClassInitialize(TestContext testContext)
        //{
        //}
        //
        //Use ClassCleanup to run code after all tests in a class have run
        //[ClassCleanup()]
        //public static void MyClassCleanup()
        //{
        //}
        //
        //Use TestInitialize to run code before running each test
        //[TestInitialize()]
        //public void MyTestInitialize()
        //{
        //}
        //
        //Use TestCleanup to run code after each test has run
        //[TestCleanup()]
        //public void MyTestCleanup()
        //{
        //}
        //
        #endregion


        /// <summary>
        ///A test for User Constructor
        ///</summary>
        [TestMethod()]
        public void UserConstructorTest()
        {
            User target = new User();
            Assert.Inconclusive("TODO: Implement code to verify target");
        }

        /// <summary>
        ///A test for CreateUser
        ///</summary>
        [TestMethod()]
        public void CreateUserTest()
        {
            int userID = 0; // TODO: Initialize to an appropriate value
            string cIL = string.Empty; // TODO: Initialize to an appropriate value
            string nameCN = string.Empty; // TODO: Initialize to an appropriate value
            string nameEN = string.Empty; // TODO: Initialize to an appropriate value
            string email = string.Empty; // TODO: Initialize to an appropriate value
            bool isActive = false; // TODO: Initialize to an appropriate value
            User expected = null; // TODO: Initialize to an appropriate value
            User actual;
            actual = User.CreateUser(userID, cIL, nameCN, nameEN, email, isActive);
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for CIL
        ///</summary>
        [TestMethod()]
        public void CILTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            string expected = string.Empty; // TODO: Initialize to an appropriate value
            string actual;
            target.CIL = expected;
            actual = target.CIL;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Contact
        ///</summary>
        [TestMethod()]
        public void ContactTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            EntityCollection<Contact> expected = null; // TODO: Initialize to an appropriate value
            EntityCollection<Contact> actual;
            target.Contact = expected;
            actual = target.Contact;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Department
        ///</summary>
        [TestMethod()]
        public void DepartmentTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            Department expected = null; // TODO: Initialize to an appropriate value
            Department actual;
            target.Department = expected;
            actual = target.Department;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for DepartmentID
        ///</summary>
        [TestMethod()]
        public void DepartmentIDTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            Nullable<int> expected = new Nullable<int>(); // TODO: Initialize to an appropriate value
            Nullable<int> actual;
            target.DepartmentID = expected;
            actual = target.DepartmentID;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for DepartmentReference
        ///</summary>
        [TestMethod()]
        public void DepartmentReferenceTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            EntityReference<Department> expected = null; // TODO: Initialize to an appropriate value
            EntityReference<Department> actual;
            target.DepartmentReference = expected;
            actual = target.DepartmentReference;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Email
        ///</summary>
        [TestMethod()]
        public void EmailTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            string expected = string.Empty; // TODO: Initialize to an appropriate value
            string actual;
            target.Email = expected;
            actual = target.Email;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Email1
        ///</summary>
        [TestMethod()]
        public void Email1Test()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            EntityCollection<Email> expected = null; // TODO: Initialize to an appropriate value
            EntityCollection<Email> actual;
            target.Email1 = expected;
            actual = target.Email1;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for IsActive
        ///</summary>
        [TestMethod()]
        public void IsActiveTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            bool expected = false; // TODO: Initialize to an appropriate value
            bool actual;
            target.IsActive = expected;
            actual = target.IsActive;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Message
        ///</summary>
        [TestMethod()]
        public void MessageTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            EntityCollection<Message> expected = null; // TODO: Initialize to an appropriate value
            EntityCollection<Message> actual;
            target.Message = expected;
            actual = target.Message;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Mobile
        ///</summary>
        [TestMethod()]
        public void MobileTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            string expected = string.Empty; // TODO: Initialize to an appropriate value
            string actual;
            target.Mobile = expected;
            actual = target.Mobile;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for NameCN
        ///</summary>
        [TestMethod()]
        public void NameCNTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            string expected = string.Empty; // TODO: Initialize to an appropriate value
            string actual;
            target.NameCN = expected;
            actual = target.NameCN;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for NameEN
        ///</summary>
        [TestMethod()]
        public void NameENTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            string expected = string.Empty; // TODO: Initialize to an appropriate value
            string actual;
            target.NameEN = expected;
            actual = target.NameEN;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Reminder
        ///</summary>
        [TestMethod()]
        public void ReminderTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            EntityCollection<Reminder> expected = null; // TODO: Initialize to an appropriate value
            EntityCollection<Reminder> actual;
            target.Reminder = expected;
            actual = target.Reminder;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Role
        ///</summary>
        [TestMethod()]
        public void RoleTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            EntityCollection<Role> expected = null; // TODO: Initialize to an appropriate value
            EntityCollection<Role> actual;
            target.Role = expected;
            actual = target.Role;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for SMSTemplate
        ///</summary>
        [TestMethod()]
        public void SMSTemplateTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            EntityCollection<SMSTemplate> expected = null; // TODO: Initialize to an appropriate value
            EntityCollection<SMSTemplate> actual;
            target.SMSTemplate = expected;
            actual = target.SMSTemplate;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for UserID
        ///</summary>
        [TestMethod()]
        public void UserIDTest()
        {
            User target = new User(); // TODO: Initialize to an appropriate value
            int expected = 0; // TODO: Initialize to an appropriate value
            int actual;
            target.UserID = expected;
            actual = target.UserID;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }
    }
}
